package hw4;

import java.util.Scanner;

public class StudentMaster {
	//属性
	//学生信息集合对象
	private Student[] arrStus;
	
	//行为
	/**
	 * 
	 */
	public StudentMaster() {
		super();
		//调用初始化
		init();
	}
	
	public void showScore() {
		//初始化
		//init();
		
	
		//排序
		bubbleSort();
		
		//打印
		printArr();
	}
	
	//数据录入
	public void init() {
		//准备数据
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入班级学生人数：");
		//学生人数
		int count =sc.nextInt();
		//根据学生人数创建数组
		//此处初始化为成员变量
		arrStus =new Student[3];
		//添加数据（可以控制台输入）
		for(int i=0;i<count;i++) {
			//输入参数
			System.out.println("请输入第"+(i+1)+"个学生的姓名：");
			String strName =sc.next();
			System.out.println("请输入第"+(i+1)+"个学生的学号：");
			String strNum=sc.next();
			System.out.println("请输入第"+(i+1)+"个学生的成绩：");
			double fScore=sc.nextDouble();
			//根据输入的参数，构建一个学生对象实力
			Student stu = new Student(strName,strNum,fScore);
			//把创建的学生对象，放到学生数组
			arrStus[i]=stu;
		}
	}
	
	//排序行为
	//排序
	/**
	 * 冒泡排序
	 * 
	 */
	public  void  bubbleSort() {
		//外层for循环，轮数
		for(int i=0;i<arrStus.length;i++) {
			//内层for循环，完胜两两交换
			for(int j=0;j<arrStus.length-i-1;j++) {//j为交换次数
				//两两比较交换，排序：从大到小
				if(arrStus[j].getStuScore()<arrStus[j+1].getStuScore()) {
					//亮亮交换
					Student  temp =arrStus[j];
					arrStus[j]=arrStus[j+1];
					arrStus[j+1]=temp;
				}
			}
		}
		
		
		
	}
	//学生信息输出行为
	//信息输出
	public  void printArr() {
		for(Student i :arrStus) {
			i.printMe();
		}
		//换行
		System.out.println();
	}

}
